package com.lzq.mq.common.utils;

import java.util.List;

/**
 * 断言工具类
 */
public class AssertUtils {

    /**
     * 判断字符串是否为空
     * @param val 待判断的字符串
     * @param msg 为空时的错误信息
     */
    public static void isNotBlank(String val, String msg) {
        if (val == null || val.trim().length() == 0) {
            throw new RuntimeException(msg);
        }
    }

    /**
     * 判断对象是否为空
     * @param val 待判断的对象
     * @param msg 为空时的错误信息
     */
    public static void isNotNull(Object val, String msg) {
        if (val == null) {
            throw new RuntimeException(msg);
        }
    }

    /**
     * 判断条件是否为真
     * @param condition 条件
     * @param msg 为假时的错误信息
     */
    public static void isTrue(Boolean condition, String msg) {
        if (!condition) {
            throw new RuntimeException(msg);
        }
    }


    /**
     * 集合是否为空
     * @param list 待判断的集合
     * @param msg 为空时的错误信息
     */
    public static void isNotEmpty(List<?> list, String msg) {
        if (list == null || list.isEmpty()) {
            throw new RuntimeException(msg);
        }
    }
}
